The present invention relates to a data storage system coupled or connected to a plurality of host processors. More particularly, the invention is concerned with a technology which can effectively be adopted for enhancing efficiency of exclusive control for the processing of stored data.
In general, there exist a plurality of files in one volume set up in a magnetic disk drive or device. When a file in a given volume is being used by a given host processor, the volume containing that file assumes a device busy state. As a result of this, access of other host processor to the other file contained in the given volume is forced to wait for releasing of the volume from the device busy state. This is because such exclusive use is effectuated that when one host processor is using one volume, any other host processor is disabled to use that volume.
With the access control scheme mentioned above, there arises a problem that when a plurality of files exist on a given volume, files other than that for which the exclusion is to be effectuated are unnecessarily subjected to the exclusion, which leads to degradation of file utilization efficiency. For solving the problem mentioned above, there has been proposed such approach that a control memory is provided in a magnetic disk control unit for storing information indicating on a file-by-file basis whether or not individual files are being used, wherein the use statuses of the files are checked by a host processor system by reading the above-mentioned information from the corresponding control memory, as disclosed, for example, in JP-B-1-15899. In the file access control scheme disclosed in JP-B-1-15899, the exclusive control is performed on a logical-file basis. Consequently, when sharing of a same file is desired, e.g. when a same file is to be shared by two host processors only for read operation, such sharing of the same file is impossible because of the exclusion on a file-by-file basis.
Further, JP-A-7-200179 discloses a scheme according to which a physical volume is partitioned into a plurality of subvolumes. With the volume management scheme disclosed in JP-A-7-200179, the exclusive control can be carried out on a subvolume basis. In that case, the subvolume itself has to be created upon formatting of the disk. Further, the exclusive control of the subvolumes is performed by the host processor by confirming or checking the use status of the subvolumes on the basis of information held by an external storage.
In the conventional systems described above, for effectuating the exclusive control on the basis of files contained in a physical volume or on a subvolume basis, it becomes necessary that the host processing system reads from the magnetic disk device the information indicating whether or not the files or subvolumes are being used, to thereby check whether the file or subvolume of concern is being used or not, which in turn means that the host processing has to be imparted with an especial function for the exclusive control. For realizing such exclusive control, alteration or modification of both host software and the server storage control unit becomes necessary.
In the light of the state of the art described above, it is an object of the present invention to provide a storage system which is capable of performing exclusive control of input/output processing requests on the basis of files (i.e., on a file-by-file basis) which are contained in a volume in the case where individual files contained in the volume are to be shared by a plurality of systems, without need for imparting to the host processing system and/or host software the function for checking whether the file or files stored in a server storage unit is being used or not.
In view of the above and other objects which will become apparent as the description proceeds, there is provided according to an aspect of the present invention a storage system which is comprised of a control unit incorporating a control memory, wherein information concerning the extent (range) of an input/output processing request (hereinafter also referred to as the input/output processing request extent) which is transferred from a given one of plural host processors to the control unit upon issuance of the input/output processing request from the former is stored in the control memory with a view to realizing the exclusive control for a plurality of input/output processing requests issued from a plurality of host processors to one logical device by making use of the extent information mentioned above. When an input/output processing request is newly issued, decision is made as to whether or not any input/output processing request whose extent overlaps with that of the newly issued input/output processing request is being executed. Unless overlap of the extents is found, the input/output processing as requested currently is executed continuously. On the other hand, when the extent overlap is found, the newly issued input/output processing request is stored in the control memory as the input/output processing request waiting for execution.
In the control memory incorporated in the control unit, identifiers defined inherently to the individual input/output processings (hereinafter referred to as the input/output processing request identifiers), respectively, and identifiers of paths by way of which the input/output processing requests are transferred to the control unit (hereinafter also referred to as the path identifiers) are stored on a request-by-request basis. The extent information of the individual input/output processing requests is stored in correspondence to the input/output processing request identifiers, respectively. Further, for the input/output processing request for which overlap of the extent is decided and which is thus forced to wait for execution, the information indicating occurrence of wait-event is stored in correspondence to the relevant input/output processing request identifier.
Furthermore, in the storage system according to the present invention, the wait-event occurrence information stored in the control memory is referred upon completion of the input/output processing for the preceding request. When the input/output request waiting for execution in succession to the preceding input/output processing request exists, a request for reconnection of the input/output processing awaiting the execution is issued to the host processor.
Besides, in a preferred mode for carrying out the present invention, service equipment having a function for transmitting information to the control memory incorporated in the control unit may be employed for allowing the control unit to inhibit the logical device from the aforementioned exclusive control on the extent-by-extent basis when it is indicated by the service equipment that the extent exclusive control on the logical-device basis is not to be performed.